﻿using System;
using System.Windows;
using Infrastucture;
using TimeSplicerModule.DomainModels;

namespace HubModule.ViewModels
{
    // i should probably make sure the project is acting correct first... maybe I should put the devloper menues in first
    public class HubViewModel : ViewModel
    {
        private TaskModel _inProgressTask;
        private TaskModel _suspendedTask1;
        private TaskModel _suspendedTask2;
        private TaskModel _suspendedTask3;
        private TaskModel _notStartedTask1;
        private TaskModel _notStartedTask2;
        private TaskModel _notStartedTask3;
        private Visibility _inProgressTaskVisibility;
        private Visibility _suspendedTask1Visibility;
        private Visibility _suspendedTask2Visibility;
        private Visibility _suspendedTask3Visibility;
        private Visibility _notStartedTask1Visibility;
        private Visibility _notStartedTask2Visibility;
        private Visibility _notStartedTask3Visibility;
        private int _myActiveProjectCount;
        private int _myActiveTaskCount;

        public TaskModel InProgressTask
        {
            get { return _inProgressTask; }
            set { SetProperty(ref _inProgressTask, value); }
        }
        public TaskModel SuspendedTask1
        {
            get { return _suspendedTask1; }
            set { SetProperty(ref _suspendedTask1, value); }
        }
        public TaskModel SuspendedTask2
        {
            get { return _suspendedTask2; }
            set { SetProperty(ref _suspendedTask2, value); }
        }
        public TaskModel SuspendedTask3
        {
            get { return _suspendedTask3; }
            set { SetProperty(ref _suspendedTask3, value); }
        }
        public TaskModel NotStartedTask1
        {
            get { return _notStartedTask1; }
            set { SetProperty(ref _notStartedTask1, value); }
        }
        public TaskModel NotStartedTask2
        {
            get { return _notStartedTask2; }
            set { SetProperty(ref _notStartedTask2, value); }
        }
        public TaskModel NotStartedTask3
        {
            get { return _notStartedTask3; }
            set { SetProperty(ref _notStartedTask3, value); }
        }
        public Visibility InProgressTaskVisibility
        {
            get { return _inProgressTaskVisibility; }
            set { SetProperty(ref _inProgressTaskVisibility, value); }
        }
        public Visibility SuspendedTask1Visibillity
        {
            get { return _suspendedTask1Visibility; }
            set { SetProperty(ref _suspendedTask1Visibility, value); }
        }
        public Visibility SuspendedTask2Visibillity
        {
            get { return _suspendedTask2Visibility; }
            set { SetProperty(ref _suspendedTask2Visibility, value); }
        }
        public Visibility SuspendedTask3Visibillity
        {
            get { return _suspendedTask3Visibility; }
            set { SetProperty(ref _suspendedTask3Visibility, value); }
        }
        public Visibility NotStartedTask1Visibility
        {
            get { return _notStartedTask1Visibility; }
            set { SetProperty(ref _notStartedTask1Visibility, value); }
        }
        public Visibility NotStartedTask2Visibility
        {
            get { return _notStartedTask2Visibility; }
            set { SetProperty(ref _notStartedTask2Visibility, value); }
        }
        public Visibility NotStartedTask3Visibility
        {
            get { return _notStartedTask3Visibility; }
            set { SetProperty(ref _notStartedTask3Visibility, value); }
        }
        public int MyActiveProjectCount
        {
            get { return _myActiveProjectCount; }
            set { SetProperty(ref _myActiveProjectCount, value); }
        }
        public int MyActiveTaskCount
        {
            get { return _myActiveTaskCount; }
            set { SetProperty(ref _myActiveTaskCount, value); }
        }
    }
}
